#ifndef INTERSECTION_H
#define INTERSECTION_H
#include "Objet.h"
#include "Point.h"
#include "Vecteur.h"
#include "Lumiere.h"
#include "Scene.h"
#include "Rayon.h"
#include <iostream>

class Objet;
class Scene;

class Intersection {

protected:

	Point p;
	Vecteur normale;
	Objet * o;
	double t;
	bool null;

public:

	Intersection(){null=true;}
	~Intersection(){}

	Point getPoint() { return p; }
	Vecteur getNormale() { return normale; }
	Objet * getObjet() { return o; }
	double getDistance() { return t; }
	void setPoint(Point & _p) { p=_p; }
	void setNormale(Vecteur & _n) { normale = _n;}
	void setDistance(double _t) { t = _t; }
	void setObjet(Objet * _o) { o = _o; }
	Couleur calculerIllumination(Rayon &, Lumiere &, Point &);
	bool isNull() {return null;}
	void setNull(bool n) {null = n;}

};
#endif